如果公司內有很多個有root權限的管理者時,有時往往發生怪問題的時候,會不知道倒底是那個人用root改了東西,分享一個可以於有人用root登入時,系統會發mail給"mis"帳號的一個小技巧
1.用vi編輯一個訊息檔案(如:loginalert)
2.用root登入系統
3.再用vi編輯root目錄下的[.profile]檔案
4.加入下列指令:(假設UNIX中的mis帳號即為[mis])
mailx -s "Alert mail for root logined!" mis < loginalert
5.將內容存檔離開即可
6.可重新登入root後,再到[mis]帳號看有無mail進來
其實還有一種方式就是可以啟動trust模式來audit帳號
不過設定有點複雜,有機會再跟各位分享囉~
ps:請注意.profile檔案可能設為唯讀,請用指令調整權限再執行步驟(3,4)
#chmod 644 .profile
有一點疑惑, 想請問一下為什麼有人用root登入時,系統會把該訊息寫到自己建立的loginalert檔案?是HP-UX有什麼build-in的功能嗎? 還是要先設定什麼...?
您誤會了,系統不是寫到loginalert檔案,
它是把loginalert檔案寫到mail裡面啦~
別搞錯囉...^_^
mailx -s "Alert mail for root logined!" mis < loginalert
是將loginalert的內容導給mailx當內容, 沒錯,
不過為什麼root登入的資訊會寫到任一個user(如mis)的loginalert檔呢?
fantasy提到:
訊息檔案
loginalert應該只是個簡單的文字警告訊息,隨便你寫的
重點是[.profile]檔加入的指令
當root的使用者登入時就會先執行該檔案的設定
所以也就會執行到寄mail那段程式
davistai提到:
mailx -s "Alert mail for root logined!" mis < loginalert
可是如果按照順序來說
.bash_profile、.bash_login、.profile
root 登入後應該只會執行 .bash_profile 另外的.profile好像不會執行
可能需要其他人員測試看看了